The present invention relates to a semiconductor integrated circuit, and a designing method and a testing method thereof, and more particularly, to a technique for improving the quality of a test.
In recent years, the scale and complexity of semiconductor integrated circuits are rapidly increased with rapid progress in technology for nanometer semiconductor manufacturing process. Due to this, it is increasingly difficult to test semiconductor integrated circuits. To address this problem, a designing method which employs a scan test, a Built-in Self Test (BIST), or the like has been developed as a means for facilitating a test of a semiconductor integrated circuit. Since such a method has been widespread, faults represented by the stuck-at fault model can be efficiently tested. When faults represented by the stuck-at fault model are detected, the capability to detect the fault does not depend on the clock frequency. Therefore, when a conventional scan test is performed, a clock signal having a frequency lower than a clock frequency used when a semiconductor integrated circuit is actually used (actual operation) is generally used.
However, when a clock signal having a high frequency is used during an actual operation, an operational failure increasingly often occurs in a semiconductor integrated circuit with advances in nanometer technology for semiconductor integrated circuits. This is because, for example, a small defect is likely to emerge in nanometer semiconductor elements and wirings; a variation in quality occurring due to a variation in each manufacturing process of semiconductor integrated circuits becomes obvious when a clock signal having a high frequency is used; manufacturing steps are complicated; and the like. However, the conventional scan test is insufficient to test such an operational failure depending on the clock frequency. Therefore, a test method which employs a clock signal having the same frequency as that used during an actual operation (e.g., delay testing, BIST, etc.) needs to be required.
The delay testing is generally performed using the scan test technique. In the scan test technique, two operating modes, i.e., a shift operating mode and a normal operating mode, are performed in combination. To detect a fault represented by the stuck-at fault model, one pulse may be input in a normal operating mode when the conventional scan test is performed. However, in a normal operating mode of the delay testing, it is necessary to input two pulses, and the two pulses need to have the same clock frequency as that used during an actual operation. Also, when BIST is performed, it is necessary to input a pulse having a clock frequency which is actually used for a semiconductor integrated circuit, to a semiconductor integrated circuit including a BIST circuit so as to test a failure depending on the clock frequency.
To satisfy the above-described requirements, a circuit (e.g., a tester) for supplying a test clock signal having a predetermined clock frequency is additionally provided outside a semiconductor integrated circuit, even when an oscillator circuit (e.g., a Phase Locked Loop (PLL)) which is used during an actual operation is built in the semiconductor integrated circuit. When a test is performed, a test clock signal supplied from an external tester is selected using a selector or the like instead of a signal from the oscillator circuit.
However, as the speed of semiconductor integrated circuits is increased, it is becoming considerably difficult to externally supply a test pulse having the same frequency as that used during an actual operation. For example, assuming that the clock frequency of a semiconductor integrated circuit is 1 GHz during an actual operation, when delay testing or BIST which employs a clock signal having the same clock frequency as that used during the actual operation is performed with respect to the semiconductor integrated circuit, a high-speed tester which can supply a test clock signal having a frequency of 1 GHz is required. However, actually, the high-speed tester which can supply a clock signal having a frequency of 1 GHz is considerably expensive, leading to an increase in cost. Therefore, as a method for solving this problem, a method is known in which, when a high clock frequency is required for a test, a pulse output from an oscillator circuit inside a semiconductor integrated circuit is utilized (JP 2003-14822 A).
In recent years, semiconductor integrated circuits have increasingly demanded designs for low power consumption, and therefore, it is often that a clock stop control circuit for controlling an operation or a stop of a clock signal, which is generally called a gated clock circuit, is provided on a clock line. A conventional problem with semiconductor integrated circuits comprising the gated clock circuit will be described with reference to the accompanying drawings.
FIG. 1 is a block diagram illustrating an exemplary semiconductor integrated circuit. FIG. 23 is a block diagram illustrating a configuration of a conventional clock generating section 912. Hereinafter, an operation during a test of the semiconductor integrated circuit of FIG. 1 in which the clock generating section 912 is used instead of a clock generating section 12 (referred to as a conventional semiconductor integrated circuit) will be described. The semiconductor integrated circuit comprises a clock control section 10, a combinational circuit section 40, scan flip-flops 51, 52, 53 and 54, and a gated clock circuit 70. FIG. 4 is a block diagram illustrating an exemplary configuration of the gated clock circuit 70 of FIG. 1.
Firstly, an example of scan delay testing which is a most commonly used conventional technique and employs only an externally supplied clock signal for a test, will be described. Initially, the value of a clock switch terminal CLS is fixed to 1. Thereby, the selector 14 selects a clock signal supplied from an external tester to a test clock terminal TCL. Therefore, the signal of the clock generating section 912 is not used, and the externally supplied clock signal is used for the subsequent test operation.
The delay testing is performed mainly by a shift operation and a capture operation, as is similar to a general scan test for a stuck-at fault. The delay testing is different from the stuck-at fault scan test only in that a plurality of pulses (generally, two) are used during the capture operation rather than a single clock pulse. The shift operation and the capture operation are switched in accordance with a signal of a scan enable terminal SCEN. It is here assumed that the shift operation is performed when the value of the scan enable terminal SCEN is 1, and the capture operation is performed when the value of the scan enable terminal SCEN is 0.
Since a clock signal needs to be supplied to all the scan flip-flops during the shift operation, a clock signal needs to be output from an output terminal GCK of the gated clock circuit 70 which controls a clock signal to the scan flip-flop 53. Specifically, the value of a terminal Q of a flip-flop (FF) 74 (FIG. 4) needs to be fixed to 1. On the other hand, since a normal operation is performed during the capture operation, a supply/stop control of a clock signal to the scan flip-flop 53 needs to be controlled in accordance with a signal input to a terminal EN of the gated clock circuit 70.
FIG. 24 is a timing diagram illustrating waveforms during a test of the conventional semiconductor integrated circuit, indicating the case where a requirement for the signal change timing of the scan enable terminal SCEN is satisfied. To achieve the above-described operation, the requirement for the signal change timing of the scan enable terminal SCEN is the following as illustrated in FIG. 24. Specifically, a level of the signal of the scan enable terminal SCEN needs to be 0 within a “scan enable fall request timing range TF” when the shift operation is switched to the capture operation, and needs to be 1 within a “scan enable rise request timing range TR” when the capture operation is switched to the shift operation.
FIG. 25 is a timing diagram illustrating waveforms when the conventional semiconductor integrated circuit is tested, indicating the case where the requirement for the signal change timing of the scan enable terminal SCEN is not satisfied. In FIG. 25, the case where, only when the capture operation is switched to the shift operation, the requirement for the signal change timing of the scan enable terminal SCEN is not satisfied, is illustrated.
A clock signal output from the terminal GCK of the gated clock circuit 70 during the capture operation is in a stopped state since an input value of the terminal EN is 0. Next, in the case where the capture operation is switched to the shift operation, when the signal change timing of the scan enable terminal SCEN from 0 to 1 is delayed from a fall of a second capture clock, the signal of the terminal GCK of the gated clock circuit 70 remains in the stopped state even after entering the shift operation, and this state continues until the timing of a fall of a first clock signal of the shift operation. As a result, since the first clock signal of the shift operation is not input to the scan flip-flop 53, a malfunction occurs in the shift operation.
The deviation of the signal change timing of the scan enable terminal SCEN as illustrated in FIG. 25 can be avoided by adjusting the timing of inputting a signal change from a tester to the scan enable terminal SCEN. Note that a delay occurring in a signal path from the scan enable terminal SCEN to a terminal SEN of the gated clock circuit 70, or a signal path from the scan enable terminal SCEN to terminals SE of the scan flip-flops 51 to 54, varies depending on a manufacture variation and a temperature condition during a test. Therefore, when the delay is large, or a clock frequency during a test is high, it may be difficult to avoid the deviation.
Next, an example of scan delay testing in which, in order to test a high-speed semiconductor integrated circuit, an externally supplied clock signal for a test is used during the shift operation, and a clock output by a clock generating circuit (PLL, etc.) in the semiconductor integrated circuit is used during the capture operation, will be described (JP 2003-14822 A above).
FIG. 26A is a timing diagram illustrating waveforms during a test of the conventional semiconductor integrated circuit, indicating the case where the timing of switching the value of a clock control terminal CLCNT to 1 is within a period in which the value of a pulse of a PLL 922 is 0. FIG. 26B is a timing diagram illustrating waveforms during a test of the conventional semiconductor integrated circuit, indicating the case where the timing of changing the value of the clock control terminal CLCNT to 1 is within a period in which the value of a pulse of the PLL 922 is 1 Initially, a test mode terminal TMD is fixed to 1. When delay testing is performed, the clock control terminal CLCNT is initially set to be 0 at the start of the test. In this case, output terminals Q of flip-flops 925 to 928 of FIG. 23 all become 0 (all output terminals NQ become 1), so that the output of an AND gate 936 is fixed to 0.
When a scan-in operation (shift operation) is performed, the scan enable terminal SCEN and the clock switch terminal CLS are set to be 1. By this operation, the selector 14 selects a signal of the test clock terminal TCL. A clock signal is directly supplied from a tester to the test clock terminal TCL. Since the scan flip-flops 51 to 54 select the value of respective terminals SI, the scan flip-flops 51 to 54 perform the shift operation in synchronization with the clock signal input from the test clock terminal TCL.
After the end of the shift operation, when the scan flip-flops 51 to 54 are switched to the capture operation, the scan enable terminal SCEN is switched to 0. The timing of switching the scan enable terminal SCEN from 1 to 0 needs to be within the “scan enable fall request timing range TF” of FIGS. 26A and 26B. Also, the clock switch terminal CLS is switched to 0. By this operation, the selector 14 selects a signal output from the clock generating section 912. Since the scan flip-flops 51 to 54 select the value of respective terminals D, the scan flip-flops 51 to 54 perform a normal operation. At the same time as those of these operations, the clock control terminal CLCNT is switched to 1.
The flip-flops 925 to 928 shift 1 to the right in synchronization with a falling edge of a clock signal of the PLL 922. Therefore, a clock signal of the PLL 922 is started to be output from the AND gate 936 immediately after a second clock pulse falls after the clock control terminal CLCNT is switched to 1. Immediately after a fourth clock pulse falls, the output of the AND gate 936 is fixed to 0 again.
Since the phase of the pulse output from the PLL 922 is not predictable, if the timing of switching the value of the clock switch terminal CLS happens to be within a period in which a pulse of the PLL 922 is 0, the timing of a pulse output from the AND gate 936 of the clock generating section 912 is as illustrated in FIG. 26A. On the other hand, if the timing of switching the value of the clock switch terminal CLS happens to be within a period in which a pulse of the PLL 922 is 1, the timing of a pulse output from the AND gate 936 of the clock generating section 912 is as illustrated in FIG. 26B. In the case of FIG. 26B, the pulse is output earlier by one pulse of the PLL 922 than in the case of FIG. 26A.
When test results captured by the scan flip-flops 51 to 54 are output to the outside by a scan-out operation (shift operation), the scan enable terminal SCEN is switched to 1 as in the scan-in operation. The timing of switching the scan enable terminal SCEN from 0 to 1 needs to be within the “scan enable rise request timing range TR” of FIGS. 26A and 26B. Also, the clock switch terminal CLS is set to be 1. By this operation, the selector 14 selects a clock signal of the test clock terminal TCL. Using this clock signal, values captured by the scan flip-flops 51 to 54 are successively output from a scan-out terminal SCO.
Here, when the shift operation is switched to the capture operation, timing is similar to that of FIGS. 24 and 25, and it is possible to satisfy the timing constraint for switching of the scan enable terminal SCEN from 1 to 0 (the “scan enable fall request timing range TF” of FIGS. 26A and 26B). However, when the capture operation is switched to the shift operation, the “scan enable rise request timing range TR” is completely non-overlapping between FIG. 26A and FIG. 26B. As can be seen from this, there is no timing range which can simultaneously satisfy both the cases of FIGS. 26A and 26B, so that it is in principle not possible to satisfy the timing constraint for switching of the scan enable terminal SCEN from 0 to 1.
Therefore, in semiconductor integrated circuits having a gated clock circuit as illustrated in FIG. 4, it is not possible in the conventional art to perform a scan test in which an externally supplied clock signal is used for a test during the shift operation, and a clock output by a clock generating circuit on a semiconductor integrated circuit is used during the capture operation.